#!/usr/bin/env python
import pcf8591 as ADC
import RPi.GPIO as GPIO
import time

DO = 17
GPIO.setmode(GPIO.BCM)

def setup():
    ADC.setup(0x48)
    GPIO.setup(DO, GPIO.IN)

def Print(x):
    if x == 1:
        print('******************')
        print('*    雨停啦！    *')
        print('******************')
    if x == 0:
        print('******************')
        print('* 下雨收衣服啦！ *')
        print('******************')

def loop():
    status = 1   #初始状态为无水，高电平，所以为1
    while True:
        print('雨滴传感器值==', ADC.read(0))  #打印模拟输出的值转化为的数字值（0~255）
        print('DO == ', GPIO.input(DO))  #打印数字输出DO的值（无雨为1，有雨为0）
        tmp = GPIO.input(DO)
        if tmp != status:      #滴水时DO输出为低电平，无水时为高电平
            Print(tmp)         # tmp != status即遇状态变化时，打印情况
            status = tmp
        
        time.sleep(2)

if __name__ == '__main__':
    try:
        setup()
        loop()
    except KeyboardInterrupt: 
        pass

